package com.ibeeking.found.common.enums.member;

/**
 * @Author ibeeking
 * @Date: 2021-01-05 19:15
 * @Description: 会员标签条件字段 enum
 */
public enum MemberTagsConditionEnum {
    /**
     * 满足条件(选择的所有:0,选择的任意一个:1)
     */
    MATCH_CONDITION_CHOOSE("matchConditionChoose"),

    /**
     * 交易条件-最后消费时间
     */
    LAST_COST_TIME_CHOOSE("lastCostTimeChoose"),
    /**
     * 交易条件-最后消费时间-最近几天
     */
    LAST_COST_TIME_RECENT_DAY("lastCostTimeRecentDay"),

    /**
     * 交易条件-最后消费时间-开始日期
     */
    LAST_COST_TIME_START_TIME("lastCostTimeStartTime"),

    /**
     * 交易条件-最后消费时间-结束日期
     */
    LAST_COST_TIME_END_TIME("lastCostTimeEndTime"),

    /**
     * 交易条件-累计消费次数
     */
    TOTAL_COST_TIMES_CHOOSE("totalCostTimesChoose"),

    /**
     * 交易条件-累计消费次数-最小值
     */
    TOTAL_COST_TIMES_MIN("totalCostTimesMin"),

    /**
     * 交易条件-累计消费次数-最大值
     */
    TOTAL_COST_TIMES_MAX("totalCostTimesMax"),


    /**
     * 交易条件-累计消费金额
     */
    TOTAL_COST_AMOUNT_CHOOSE("totalCostAmountChoose"),

    /**
     * 交易条件-累计消费金额-最小值
     */
    TOTAL_COST_AMOUNT_MIN("totalCostAmountMin"),

    /**
     * 交易条件-累计消费金额-最大值
     */
    TOTAL_COST_AMOUNT_MAX("totalCostAmountMax"),

    /**
     * 交易条件-客单价
     */
    AVG_COST_AMOUNT_CHOOSE("avgCostAmountChoose"),

    /**
     * 交易条件-客单价-最小值
     */
    AVG_COST_AMOUNT_MIN("avgCostAmountMin"),

    /**
     * 交易条件-客单价-最大值
     */
    AVG_COST_AMOUNT_MAX("avgCostAmountMax"),

    /**
     * 资产条件-累计获得积分
     */
    TOTAL_POINTS_CHOOSE("totalPointsChoose"),

    /**
     * 资产条件-累计获得积分-最小值
     */
    TOTAL_POINTS_MIN("totalPointsMin"),

    /**
     * 资产条件-累计获得积分-最大值
     */
    TOTAL_POINTS_MAX("totalPointsMax"),;


    private String value;

    MemberTagsConditionEnum(String value) {
        this.value = value;
    }

    public String getValue() {
        return value;
    }


    public static MemberTagsConditionEnum getEnumByValue(String value) {
        for (MemberTagsConditionEnum enumObj : values()) {
            if (enumObj.getValue().equals(value)) {
                return enumObj;
            }
        }
        return null;
    }
}
